Skip to content

Promote staging to main - #1130

Merged
dot-agi merged 9 commits into
mainfrom
staging
Aug 10, 2026
Merged

Promote staging to main#1130
dot-agi merged 9 commits into
mainfrom
staging

Conversation

@stateofkate

@stateofkate stateofkate commented Aug 7, 2026

Copy link
Copy Markdown
Collaborator

Caution

DO NOT USE THE MERGE BUTTON ON THIS PULL REQUEST.
THE BUTTON CREATES A NEW COMMIT AND BREAKS THE RELEASE MODEL.
COMMENT /promote TO COMPLETE THE PROMOTION.

Summary

Ships the quota lock removal, the QA accept/reject verdict rework, the network-shape e2e de-race, and /promote <sha> support in the promotion workflow.

Commits in this promotion

e43f64f8 ci(promote): support /promote <sha> and share the promotion checks (#1133)
8b7b2367 test(e2e): de-race the network-shape request counting (#1128)
fa608980 QA verdict: accept/reject labels, plain prompt, keep verdict until replaced, scoped rerun (#1120)
9f26989e fix(quotas): remove the org-wide advisory lock from trial submission (#1118)

Validation

Staging Deploy is green on the staging tip e43f64f8a1228767055eb76930fc9b0362cbe93a (run completed 2026-08-08T23:39:32Z). main is an ancestor of the tip, so the promotion fast-forwards cleanly.


Note

High Risk
Large cross-cutting release touching quota enforcement, task verdict persistence and constraints, promotion/git workflows, and core QA paths—incorrect verdict or quota behavior affects production task outcomes and spend controls.

Overview
This promotion advances main to the validated staging tip and ships four feature areas together.

Release & CI: Promotion Preflight and /promote now share verify_promotion_target.sh, resolving the target from /promote <sha>, the PR body's promotion-target pin, or the staging tip, with fast-forward and green Staging Deploy checks. PR preview's require-working-preview gate uses !cancelled() so superseded runs do not publish failing checks.

Quotas: Trial submission no longer takes org/user quota advisory locks; admission can briefly overshoot and the enforcement sweep cancels overage. Retries lock the task row before reserving {task_id}-{N}.

Task QA verdict: New oddish.core.verdict_state is the sole writer for verdict columns—published payloads stay visible while replacement QA runs; cancel restores, terminal failure clears. A DB check constraint enforces valid payload/status pairs. Verdicts use accept/reject (with is_good kept for compatibility); the judge prompt is rewritten for immediate-rejection rules. UI shows Accepted/Rejected, matrix cells use QA tone on pass/fail glyphs, task overview lists all version trials (with "elsewhere" chips), and Rerun verdict calls qa/backfill with force: false. GET /trials/.../trajectory/summary?refresh=true requires TASKS scope and bypasses schema-version cache.

E2E: Shared network-log.ts attributes requests by issue time and holds responses to beat StrictMode abort races in tasks/experiment network-shape specs.

Reviewed by Cursor Bugbot for commit 33fa252. Bugbot is set up for automated code reviews on this repo. Configure here.

…1118)

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: kyle-compute <kylehvdbnl@gmail.com>
@vercel

vercel Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
oddish-app Ready Ready Preview Aug 10, 2026 10:29pm
oddish-app (staging) Ready Ready Preview Aug 10, 2026 10:29pm

…placed, scoped rerun (#1120)

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: kyle-compute <kylehvdbnl@gmail.com>
Comment thread oddish/src/oddish/core/quota_enforcement.py
@cursor
cursor Bot requested review from RishiDesai and charlesyhuang August 7, 2026 22:17

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Risk: high. Left a non-blocking comment: Cursor Bugbot finished as skipped and left an unresolved high-severity finding on quota-cancel verdict handling, so this is not approved. Assigned reviewers for human review of this billing/quota promotion.

Open in Web View Automation 

Sent by Cursor Approval Agent: Pull Request Router and Approver

Comment thread oddish/src/oddish/workers/queue/qa_handler.py
)

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: kyle-compute <kylehvdbnl@gmail.com>

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.

There are 2 total unresolved issues (including 1 from previous review).

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 319fe01. Configure here.

Comment thread oddish/src/oddish/core/verdict_sync.py Outdated
@kyle-compute

Copy link
Copy Markdown
Collaborator

/promote 33fa252

@github-actions

Copy link
Copy Markdown
Contributor

Promoted. main now points at 33fa252eeebbe52003a14e48b46b73a0ed0d45c3, the same commit as staging.

@dot-agi
dot-agi merged commit 33fa252 into main Aug 10, 2026
26 checks passed
@railway-app
railway-app Bot temporarily deployed to pleasing-unity / production August 10, 2026 23:04 Inactive
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants